/* =====  Fonts ===== */
@import url("https://fonts.googleapis.com/css2?family=Wix+Madefor+Display:wght@400;500;600&display=swap");

/* =====  CSS Custom Properties ===== */
:root {
  --color-page-bg: #F6F8FB;       
  --color-block-bg: #FFFFFF;     
  --color-block-bg-accent: rgba(90,116,245,0.05);
  --color-block-bg-default: #1182C2;  
  --color-block-bg-hover: #035D90;   
  --color-primary: #5A74F5;             
  --color-primary-hover: #0080C8;        
  --color-dark: #23273D;               
  --color-grey: #EBEBEB;

  --radius-s: 10px;
  --radius-m: 12px;
  --radius-l: 20px;
  --radius-lg: 24px;

  --fs-h1: 52px;
  --fs-h2: 48px;
  --fs-h3: 32px;
  --fs-h4: 24px;

  --fs-b1: 24px;
  --fs-b2: 20px;
  --fs-b3: 18px;
  --fs-b4: 16px; 

  --section-gap: 140px;
  --section-gap-tabmax: 100px;
  --section-gap-tab: 60px;
  --section-gap-mob: 40px;

  --container-max: 1280px;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  padding: 0;
  font-family: "Wix Madefor Display", sans-serif;
  background: var(--color-page-bg);
  color: var(--color-dark);
  line-height: 1.4;
  -webkit-font-smoothing: antialiased;
}

img,
svg {
  display: block;
  max-width: 100%;
  height: auto;
}

p, h1, h2, h3, h4, div, li, ul {
  text-align: start;
}

a {
  color: inherit;
  text-decoration: none;
}

.container, .container__box {
  max-width: var(--container-max);
  margin-inline: auto;
  padding: 0 36px;
}

.section {
  margin-block: var(--section-gap);
  text-align: left;
}

.h1 { font: 600 var(--fs-h1)/120% "Wix Madefor Display", sans-serif; }
.h2 { font: 600 var(--fs-h2)/120% "Wix Madefor Display", sans-serif;
    margin-bottom: 40px;    
}
.h3 { font: 600 var(--fs-h3)/120% "Wix Madefor Display", sans-serif; }
.h4 { font: 500 var(--fs-h4)/140% "Wix Madefor Display", sans-serif; }

.b1 { font: 400 var(--fs-b1)/140% "Wix Madefor Display", sans-serif; }
.b2 { font: 400 var(--fs-b2)/140% "Wix Madefor Display", sans-serif; }
.b3 { font: 400 var(--fs-b3)/140% "Wix Madefor Display", sans-serif; }

@media (max-width: 1170px){
    :root{
      --fs-h1: 48px;
      --fs-b1: var(--fs-b2);
      --fs-h2: var(--fs-h3);
      --fs-b2: var(--fs-b3);

      --section-gap: var(--section-gap-tabmax);
    }
  }

@media (max-width: 990px){
    :root{
      --fs-h1: 32px;
      --fs-b1: var(--fs-b3);
      --fs-h2: 28px;
      --fs-h3: 28px;

      --section-gap: var(--section-gap-tab);
    }

    h2{ margin-bottom: 20px; }
  }

@media (max-width: 576px){
    :root{
      --fs-h1: 26px;
      --fs-b1: var(--fs-b4);
      --fs-b2: var(--fs-b4);
      --fs-b3: var(--fs-b4); 
      --fs-h2: 24px;
      --fs-h3: 20px;

      --section-gap: var(--section-gap-mob);
    }
  }

@media (max-width: 990px){ 
  .container__box {
    padding: 39px;
  }

  .b2 {
    font-size: 16px; 
  }

  .h4 {
    font-size: 22px;
  }

}

@media (max-width: 576px) {
    .container__box {
        padding: 16px;
    }

    .container {
        padding: 0;
    }

    .section {
        padding: 0;
    }

    .h1 { 
      font-size: 26px; 
    }

    .b1 {
      font-size: 16px; 
      font-weight: 400;
      line-height: 140%;
    }

    .b2 {
      font-size: 14px; 
    }

    h2 { 
        margin-bottom: 12px;
        font-size: 24px;
    }

    .h4 {
      font-size: 18px;
    }
}

/* =====  Internship Section (пример блока) ===== */
.internship {
  background: var(--color-block-bg);
  border-radius: var(--radius-l);
  padding: 30px;
}

.internship__inner {
  display: flex;
  align-items: center;
  gap: 62px;
  padding: 0;
}

.internship__content {
  flex: 1 1 55%;
  width: 100%;
}

.internship__title {
  margin: 0 0 20px;
  color: var(--color-dark);
}

.internship__subtitle {
  margin: 0 0 40px;
  color: var(--color-dark);
}

.internship__button {
  display: inline-flex;
  align-items: center;
  height: 60px;
  gap: 0.75rem;
  padding: 12px 32px 14px;
  font: 400 var(--fs-b1) "Wix Madefor Display", sans-serif;
  color: #fff;
  background: var(--color-block-bg-default);
  border-radius: 12px;
  transition: background 0.2s ease-in-out;
}

.internship__button:hover {
  background: var(--color-block-bg-hover);
}

.internship__image-wrapper {
  flex: 1 1 35%;
  text-align: right;
}

.internship__image {
  max-height: 460px;
  width: 100%;
  height: auto;
}

@media (max-width: 1170px) {
  .internship__inner {
    gap: 30px;
  }

  .internship__image-wrapper {
    flex: 1 1 40%;
  }

  .internship__subtitle {
    font-size: 20px;
  }
}

@media (max-width: 990px) {
  .internship {
    padding: 20px;
  }

  .internship__inner {
    gap: 20px;
  }

  .internship__subtitle {
    margin: 0 0 20px;
  }

  .internship__inner {
    flex-direction: column-reverse;
  }
  .internship__image-wrapper {
    text-align: center;
  }
}

@media (max-width: 576px) {
  .internship {
    padding: 12px;
    border-radius: var(--radius-m);
    margin-top: 104px;
  }

  .internship__title {
    margin: 0 0 8px;
  }

  .internship__subtitle {
    margin: 0 0 24px;
  }

  .internship__button {
    width: 100%;
    justify-content: center;
    height: 48px;
  }

  .internship__inner {
    gap: 24px;
  }
}

/* =====  About Section ===== */
.about {
    background: var(--color-block-bg-accent);
    border-radius: var(--radius-l);
    padding: 30px;
  }
  
  .about__inner {
    display: flex;
    align-items: center;
    gap: 40px;
    padding: 0;
  }
  
  .about__content {
    flex: 1 1 52%;
    width: 100%;
  }
  
  .about__title {
    margin: 0 0 40px;
    color: var(--color-dark);
  }
  
  .about__text {
    margin: 0 0 1.5rem;
    color: var(--color-dark);
  }
  
  .about__illustration {
    flex: 1 1 50%;
    text-align: right;
    margin-top: auto;
  }
  
  .about__image {
    width: 100%;
    height: auto;
    max-height: 460px;
  }

  @media (max-width: 1170px) {
    .about__inner {
      padding: 0;
      gap: 20px;
    }

    .about__title {
      margin: 0 0 20px;
    }

    .about__illustration {
      flex: 1 1 47%;
    }

    .about__text {
      margin: 20px 0 0;
    }
  }
  
  @media (max-width: 990px) {
    .about {
      padding: 20px;
    }

    .about__inner {
      flex-direction: column;
      gap: 20px;
    }
    .about__illustration {
      text-align: center;
      flex: 1 1 50%;
    }

    .about__text {
      margin: 0 0 12px;
    }
  }

  @media (max-width: 576px) {
    .about {
      padding: 12px;
      border-radius: var(--radius-m);
    }

    .about__inner {
        gap: 12px;
    }

    .about__title {
      margin: 0 0 24px;
    }
  }

  /* =====  Facts Section ===== */
.facts__list {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    padding: 0;
  }
  
  .facts__item {
    background: var(--color-primary);
    color: #fff;
    border-radius: var(--radius-l);
    padding: 20px;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    min-height: 190px;         
    text-align: center;
  }
  
  .facts__value {
    font: 600 clamp(3rem, 8vw, 82px) / 105% "Wix Madefor Display", sans-serif;
  }
  
  .facts__label {
    margin-top: 10px;
    text-align: center;
  }

  @media (max-width: 1170px) {
    .facts__list {
      gap: 10px;
    }
  }

  @media (max-width: 990px) {
    .facts__list {
      grid-template-columns: repeat(2, 1fr);
      gap: 10px;
    }

    .facts__item {
      min-height: 180px;
    }
      
    .facts__value {
      font: 600 clamp(5rem, 8vw, 82px) / 105% "Wix Madefor Display", sans-serif;
    }
  }

  @media (max-width: 576px) {
    .facts__list {
        gap: 6px;
        grid-template-columns: repeat(1, 1fr);
    }

    .facts__item {
        min-height: 105px;
        border-radius: var(--radius-m);
        padding: 12px;
    }

    .facts__label {
        margin-top: 6px;
    }

    .facts__value {
      font: 600 clamp(52px) / 105% "Wix Madefor Display", sans-serif;
    }
  }

  /* =====  Promo Section ===== */
  .promo {
    background: var(--color-block-bg-accent);
    border-radius: var(--radius-l);
    padding: 30px;
  }
  
  .promo__inner {
    display: flex;
    align-items: center;
    gap: 55px;
    padding: 0;
  }
  
  .promo__media {
    position: relative;
    flex: 1 1 48%;
    margin-top: auto;
  }
  
  .promo__image {
    width: 100%;
    height: auto;
    border-radius: calc(var(--radius-lg) * 0.7);
    object-fit: cover;
  }
  
  .promo__icon {
    position: absolute;
    width: clamp(40px, 8vw, 64px);
  }
  
  .promo__icon--chat {      
    top: 8%;
    left: 8%;
  }
  
  .promo__cross {
    --size: clamp(18px, 3vw, 28px);
    position: absolute;
    width: var(--size);
    height: var(--size);
    background:
      linear-gradient(var(--color-block-bg-accent) 45%, transparent 46%) center,
      linear-gradient(90deg, var(--color-block-bg-accent) 45%, transparent 46%) center;
    background-size: 100% 2px, 2px 100%;
    background-repeat: no-repeat;
  }
  
  .promo__cross--tl { top: 75%; left: 6%; }
  .promo__cross--br { bottom: 6%; right: 8%; }
  
  .promo__content {
    flex: 1 1 52%;
  }
  
  .promo__title {
    margin: 0 0 40px;
    color: var(--color-dark);
    max-width: 400px;
  }
  
  .promo__text {
    margin: 20px 0 0;
    color: var(--color-dark);
  }

  @media (max-width: 1170px) {
    .promo__inner {
      gap: 20px;
    }

    .promo__title {
      max-width: 100%;
    }

    .promo__content {
      flex: 1 1 54%;
    }

    .promo__media {
      flex: 1 1 46%;
    }

    .promo__title {
      margin: 0 0 20px;
    }
  }
  
  @media (max-width: 990px) {
    .promo {
      padding: 20px;
      border-radius: var(--radius-l);
    }

    .promo__inner {
      flex-direction: column-reverse;
      gap: 0;
    }

    .promo__media {
      width: 100%;
    }

    .promo__content {
      width: 100%;
    }
  }

  @media (max-width: 576px) {
    .promo {
        padding: 12px;
        border-radius: var(--radius-m);
    }

    .promo__title {
      margin: 0 0 24px;
    }

    .promo__text {
      margin: 0 0 24px;
    }
  }

  
/* =====  Directions Section ===== */

/* ===========================================================
    Сетка списка направлений
   =========================================================== */
   .directions__title {
    text-align: center;
    margin: 0 0 40px;
    color: var(--color-dark);
   }

  .directions__list {
    display: flex;
    flex-wrap: wrap;
    gap: clamp(1rem, 2vw, 2rem);
    margin-bottom: 50px;
  }

  @media (min-width: 1240px) {                 
    .directions__list {
      gap: 12px;
    }
  }

  @media (max-width: 1170px) { 
    .directions__list {
      gap: 10px;
      margin-bottom: 20px;
    }

    .directions__title {
      margin: 0 0 20px;
     }
  }

  @media (max-width: 576px) {                 
    .directions__title {
      margin: 0 0 12px;
    }
  }

  .directions__item {
    --brd: 1px solid rgba(0, 128, 200, 0.7);
    display: flex;
    flex: 1 1 calc(20% - 16px);
    min-width: 230px;
  
    min-height: 152px;
    padding: 20px;
  
    border: var(--brd);
    border-radius: var(--radius-m);
    background: #fff;
    color: var(--color-dark);
    cursor: pointer;
  
    transition: background .2s ease, color .2s ease, border-color .2s ease;
  }
  
  .directions__item:hover,
  .directions__item:focus-visible {
    background: var(--color-block-bg-default);
    color: #fff;
    border-color: var(--color-block-bg-default);
    outline: none;
  }
  
  .directions__item--active,
  .directions__subitem--active {
    background: var(--color-block-bg-default);
    color: #fff;
  }
  
  .directions__item br { 
    display: none;
  }

  @media (max-width: 990px) {
    .directions__item br { display: inline; }

    .directions__item {
      padding: 10px;
      min-height: 108px;
      border-radius: var(--radius-s);
    }
  }
  
  /* ===========================================================
      Плитка-аккордеон (variants inside list)
     =========================================================== */
  .directions__item--group { padding: 0; }
  
  .directions__toggle {
    all: unset;
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    padding: 1.25rem 1.5rem;
    cursor: pointer;
  }
  
  .directions__arrow {
    width: 14px; height: 14px;
    border-right: 2px solid currentColor;
    border-bottom: 2px solid currentColor;
    transform: rotate(45deg);                 
    transition: transform .3s;
  }
  
  .directions__item--group.open .directions__arrow {
    transform: rotate(-135deg);               
  }
  
  .directions__sublist {
    overflow: hidden;
    height: 0;
    transition: height .35s ease;
  }
  
  .directions__subitem {
    padding: 1rem 1.5rem;
    cursor: pointer;
  }
  
  .directions__subitem:hover { background: rgba(0,0,0,.04); }

  /* ===========================================================
   Мини-аккордеон вариантов (появляется в блоке track__content)
   =========================================================== */
  .container__track {
    padding: 0;
  }

  .track-variants__toggle {
    width: 97% !important;               
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1.25rem 1.5rem;
    cursor: pointer;
    font: 600 22px/1.3 "Wix Madefor Display", sans-serif;
    background-color: var(--color-block-bg);
    border: none;
    text-align: left;
  }
  
.track-variants__arrow {
  flex-shrink: 0;
  width: 40px;
  aspect-ratio: 1;                 
  border-radius: 50%;
  background: var(--color-primary-hover);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: transform .25s ease; 
}

.track-variants__icon {
  width: 26px;
  height: 26px;
  color: #fff;                    
}

.track-variants.open .track-variants__arrow {
  transform: rotate(180deg);
}

.track__wrap {
    display: grid;
    grid-template-columns: 1fr 360px;
    gap: clamp(2rem, 4vw, 4rem);
  
    background: var(--color-block-bg);
    border: 1.2px solid var(--color-block-bg-default);
    border-radius: 30px;
    padding: 30px;
  }
  
  .track__title {
    margin: 0 0 40px;
    color: var(--color-dark);
  }
  
  .track__subtitle {
    margin: 12px 0;
    color: var(--color-dark);
  }
  
  .track__list {
    margin: 0;
    padding-left: 1.2rem;
    list-style: disc;
    color: var(--color-dark);
  }
  
  .track__mentor {
    position: relative;
    margin: auto 0 0;
  }
  
  .track__photo {
    width: 100%;
    height: auto;
    border-radius: calc(var(--radius-lg) * 0.7);
    object-fit: cover;
  }
  
  .track__caption {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    padding: 1rem 1.25rem;
    background: rgba(255, 255, 255, 0.85);   
    border-radius: 0 0 calc(var(--radius-lg) * 0.7) calc(var(--radius-lg) * 0.7);
    color: var(--color-dark);
  }
  @media (max-width: 1170px) {
    .track__wrap {
      gap: 20px;
      border-radius: var(--radius-l);
    }

    .track__title {
      margin: 0 0 20px;
    }

    .track__subtitle {
      margin: 6px 0;
    }
  }

  @media (max-width: 990px) {
    .track__wrap {
      grid-template-columns: 1fr;      
      border-radius: var(--radius-s);
      padding: 20px;
    }

    .track__subtitle {
      margin: 6px 0;
    }
  }

  @media (max-width: 576px) {
    .track__wrap {
      padding: 12px;
    }

    .track__title {
      margin: 0 0 12px;
    }
  }

  /* ===========================================================
   Мини-аккордеон вариантов внутри блока track__content
   =========================================================== */
   .track-variants {
    border: 1.2px solid var(--color-block-bg-default);
    border-radius: var(--radius-m);
    overflow: hidden;
    margin-bottom: 40px;
  }

  .track-variants__list {
    overflow:hidden;
    height:0;
    transition:height .35s
  }

  .track-variants__item {
    padding:1rem 1.5rem;
    cursor:pointer
  }

  .track-variants__item:hover {
    color: var(--color-primary-hover);
  }

  .track-variants__item--active {
    font-weight:600
  }
  
  .has-variants .track__title {
    display:none;
  }       
  
  @media (max-width: 990px) {
    .track-variants {
      margin-bottom: 20px;
    }

    .track__mentor {
      order: 2;                          
    }

    .track-variants__toggle, .track-variants__item {
      padding: 16px 20px;
    }
  }

  @media (min-width: 577px) {
    .directions__select {
      display: none;
    }
  }

@media (max-width: 576px) {
    .directions__list {
      display:none;
    }
  
    .directions__select {
      border:1.2px solid var(--color-block-bg-default);
      border-radius:var(--radius-m);
      overflow:hidden;
      margin-bottom: 12px;
      background-color: var(--color-primary-hover);
      color: var(--color-block-bg);
    }
    .directions__select-toggle {
      all:unset;
      display:flex;
      justify-content
      :space-between;
      align-items:center;
      cursor:pointer;
      padding:1.25rem 1.5rem;
    }
    .directions__select-arrow{
  min-width: 14px;
  top: -3px;
  position: relative;
  width: 14px;
  height: 14px;
  border-right:2px solid currentColor;
  border-bottom:2px solid currentColor;
  transform:rotate(45deg);        
  transition:transform .25s ease;
}

.directions__select.open .directions__select-arrow{
  transform:rotate(-135deg);      
}
    .directions__select-list {
      overflow:hidden;
      height:0;
      transition:height .35s ease;
      padding: 0 10px;
    }
    .directions__select-item {
      padding: 10px;
      cursor:pointer;
      background-color: var(--color-block-bg);
      color: #000;
      border: 1px solid var(--color-primary-hover);
      border-radius: var(--radius-m);
      margin-bottom: 10px;
    }
    .directions__select-item--active {
      border-radius: var(--radius-m);
      border: 1px solid var(--color-block-bg);
      background-color: var(--color-primary-hover);
      color: var(--color-block-bg);
    }

    .directions__select-title {
      width: 90%;
      padding: 10px;
    }

    @media (max-width: 990px) {
      .directions__select {
        border-radius:var(--radius-m);
      }
    }

    @media (max-width: 576px) {
      .directions__select-toggle {
        padding: 10px;
        width: 91%;
        display: flex;
      }

      .track__mentor {
        margin-bottom: 0;
      }

      .track-variants{
        margin-bottom: 12px;
      }

      .track-variants__toggle, .track-variants__item {
        padding: 10px;
      }

      .track__photo {
        border-radius: var(--radius-s);
      }

    }

  }
  
  
  /* =====  Benefits Section ===== */
.benefits .container {
  padding: 0;
}

.benefits__title {
  margin: 0 0 2.5rem;
  text-align: center;
  color: var(--color-dark);
}

.benefits__list {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(420px, 1fr));
  gap: 20px;
  margin-bottom: 24px;
}

.benefits__item {
  position: relative;
  padding: 30px 20px;
  background: var(--color-primary-hover);
  border-radius: var(--radius-l);
  color: #fff;
}

.benefits__icon {
  width: clamp(34px, 4vw, 44px);
  height: auto;
  margin-bottom: 1.25rem;
}

.benefits__item-title {
  margin: 0 0 0.75rem;
}

.benefits__item-text {
  margin: 0;
}

.benefits__cta {
  display: flex;
  align-items: center;
  gap: 24px;
  flex-wrap: wrap;
  padding: 30px;
  border: 1.2px solid var(--color-primary-hover);
  border-radius: var(--radius-l);
  background: #fff;
}

.benefits__cta-text {
  flex: 1 1 480px;
  margin: 0;
  color: var(--color-dark);
}

.benefits__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  height: 60px;
  padding: 12px 30px;
  font: 500 18px/1 "Wix Madefor Display", sans-serif;
  color: #fff;
  background: var(--color-block-bg-default);
  border-radius: 12px;
  text-decoration: none;
  white-space: nowrap;
  transition: all .2s ease-in-out;
}

.benefits__button:hover {
  background: var(--color-block-bg-hover);
}

@media (max-width: 1170px) {
  .benefits .container {
    padding: 0;
  }

  .benefits__list {
    gap: 10px;
  }

  .benefits__title {
    margin: 0 0 20px;
  }

  .benefits__item {
    padding: 20px;
  }

  .benefits__icon {
    margin-bottom: 12px;
  }

  .benefits__item-title {
    margin: 0 0 6px;
  }

  .benefits__item-title.h4 {
    font-size: 22px;
  }

  .benefits__cta {
    gap: 64px;
  }

  .benefits__cta-text {
    font-size: 18px;
  }
}

@media (max-width: 990px) {
  .benefits__item {
    border-radius: var(--radius-s);
  }

  .benefits__item-text.b2 {
    font-size: 18px;
  }

  .benefits__list {
    grid-template-columns: 1fr;
    gap: 10px;
    margin-bottom: 20px;
  }

  .benefits__cta {
    flex-direction: column;
    padding: 20px;
    border-radius: var(--radius-s);
    gap: 40px;
  }

  .benefits__cta-text {
    flex: 1 1 100%;
  }

  .benefits__cta-text.h4 {
    font-size: 18px;
  }

  .benefits__button {
    width: 100%;
    height: 66px;
  }
}

@media (max-width: 576px) {
  .benefits__list {
    gap: 6px;
  }
  
  .benefits__item{
    padding: 20px 12px;
  }

  .benefits__item-title {
    margin: 0 0 6px;
  }

  .benefits__title {
    margin: 0 0 24px;
  }  
  
  .benefits__cta {
    padding: 12px;
  }

  .benefits__icon {
    margin: 0 0 24px;
  }
}

/* ===== Testimonials ===== */

.testimonials .container {
  padding: 0;
}

.testimonials__header{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap: 40px;
    margin-bottom:2rem;
  }
  
  .testimonials__title{
    margin:0;
    color:var(--color-dark);
  }
  
  .testimonials__nav{display:flex;gap:1rem}
  .testimonials__arrow{
    display:inline-flex;
    justify-content:center;
    align-items:center;
    width:40px;height:40px;
    border:none;
    border-radius:50%;
    background:var(--color-primary-hover);
    color:#fff;
    cursor:pointer;
    transition: all .2s ease-in-out;
  }

  .testimonial__arrow--left {
    transform: rotate(180deg);
  }

  .testimonials__arrow:disabled{opacity:.4;cursor:default}
  .testimonials__arrow:hover:not(:disabled){background:var(--color-block-bg-hover)}
  
  .testimonials__viewport{overflow:hidden}
  .testimonials__track{
    display:flex;
    gap: 24px;
    transition: transform .4s ease;
    padding-left: 0;
    margin-top: 0;
  }

  .testimonials__track li {
    flex: 0 0 49%;
    max-width: 50%;
    background:#fff;
    border-radius:var(--radius-l);
    padding: 30px;
    list-style-type: none;
  }

  .testimonial__info{
    display:flex;
    align-items:center;
    gap:1rem;
    margin-bottom:1rem;  
  }

  .testimonial__avatar{
    width:72px;height:72px;
    border-radius:50%;
    object-fit:cover;
    margin-bottom:1rem;
  }

  @media (max-width: 1170px){
    .testimonials__header {
      margin-bottom: 40px;
    }

    .testimonials__track {
      gap: 10px;
    }
  }


@media (max-width: 576px){
    .testimonials__header{
      flex-direction: column;    
      align-items: flex-start;
      gap: 1rem;
    }

    .testimonials{
      position: relative;        
    }
  
    .testimonials__nav{
      position: absolute;
      left: 0;
      right: 0;
      bottom: -60px;                  
      justify-content: space-between;    
      padding: 0 40px;       
    }
  
    .testimonials__viewport{
      margin-bottom: 72px;      
    }

    .testimonial__avatar{
        width:72px;height:72px;
        border-radius:50%;
        object-fit:cover;
        margin-bottom:1rem;
      }

      .testimonials__track li { flex: 0 0 100%; max-width: 100%; }
  }

  @media (max-width: 990px){
    .testimonials__header {
      margin-bottom: 44px;
    }

    .testimonial__info {
      display:flex;
      align-items:center;
      gap: 24px;
      margin-bottom: 24px;  
    }

    .testimonials__nav {
      gap: 40px;
    }

    .testimonials__track li {
      flex: 0 0 100%;
      max-width: 100%;
      padding: 20px;
    }
  
    .testimonial__avatar{ margin-bottom:0; } 
    .testimonial__name  { margin:0; }         
  }

  @media (max-width: 576px) {
    .testimonials__track li {
      padding: 12px;
      border-radius:var(--radius-m);
    }

    .testimonials__header {
      margin-bottom: 24px;
    }

    .testimonial__info {
      gap: 6px;
      margin-bottom: 12px;  
    }
  }

/* ===== Values Section ===== */

.values .container {
  padding: 0;
}

.values__title {
    margin: 0 0 40px;
    text-align: center;
    color: var(--color-dark);
  }
  
  .values__grid {
    display: grid;
    gap: 24px;
    grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
  }
  
  .values__card {
    padding: 30px 20px;
    border-radius: var(--radius-l);
    background: var(--color-primary);          
    color: #fff;
  }
  
  .values__icon {
    width: clamp(40px, 4vw, 48px);
    height: auto;
    margin-bottom: 1.25rem;
  }
  
  .values__heading {
    margin: 0 0 0.75rem;
  }
  
  .values__text {
    margin: 0;
  }

  @media (max-width: 1170px) {
    .values__grid {
      grid-template-columns: repeat(3, 1fr);
      gap: 10px;
    }

    .values__title {
      margin: 0 0 20px;
    }

    .values__card {
      padding: 20px;
    }

    .values__heading {
      font-size: 22px;
      margin: 0 0 6px;
    }

    .values__text.b2 {
      font-size: 16px;
    }

    .values__icon {
      margin-bottom: 12px;
    }
  }

  @media (max-width: 990px) {
    .values__grid {
      grid-template-columns: repeat(2, 1fr);
      gap: 10px;
    }

    .values__card {
      padding: 20px 10px;
      border-radius: var(--radius-s);
    }

    .values__heading.h4 {
      font-size: 20px;
    }

  }

  @media (max-width: 576px) {
    .values__grid {
      grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    }

    .values__title {
      margin: 0 0 24px;
    }

    .values__card {
      padding: 20px 12px;
    }

    .values__icon {
      margin-bottom: 24px;
    }

    .values__heading {
      margin: 0 0 6px;
    }

    .values__grid {
      gap: 10px;
    }
  }

  
  /* ===== Apply Section ===== */

.apply .container {
  padding: 0;
}

.apply__title {
    margin: 0 0 40px;
    color: var(--color-dark);
  }
  
  .apply__inner {
    display: flex;
    align-items: flex-start;
    gap: 40px;
  }
  
  .apply__media {
    flex: 0 0 45%;
  }
  
  .apply__image {
    width: 100%;
    height: auto;
    border-radius: calc(var(--radius-lg) * 0.7);
    object-fit: cover;
  }

  @media (max-width: 1170px) {
    .apply__title {
      margin: 0 0 20px;
    }
  }

  @media (max-width: 990px) {
    .apply__text.b1 {
      font-size: 16px;
    }
  }

  @media (max-width: 576px) {
    .apply__title {
      margin: 0 0 24px;
    }

    .apply__inner {
      gap: 20px;
    }
  }
  
/* =====  Apply steps  ===== */

.apply__steps {
    counter-reset: step;                 
    display: flex;
    flex-direction: column;
    gap: 24px;   
    margin: 0;
    padding: 0;
    list-style: none;
  }

  .apply__steps li {
    display: grid;
    grid-template-columns: 72px 1fr;    
    align-items: center;   
    font: 400 var(--fs-b1)/140% "Wix Madefor Display", sans-serif;   
  }
  
  .apply__num::before {
    counter-increment: step;
    content: counter(step);
    display: inline-block;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background: var(--color-primary-hover, #3b74c6);
    color: #fff;
    font: 600 28px/56px "Wix Madefor Display", sans-serif;
    text-align: center;
  }
  
  .apply__text {
    margin: 0;
    color: var(--color-dark, #1a1b29);
  }
  
  @media (max-width: 990px) {
    .apply__inner {
      flex-direction: column-reverse;
      gap: 20px;
    }
    .apply__media,
    .apply__steps {
      flex: 1 1 100%;
    }

    .apply__steps {
      gap: 10px;
    }

    .apply__steps li {
      padding-left: 0;
    }

    .apply__steps li::before {
      width: 48px;
      height: 48px;
      font-size: 18px;
    }

    .apply__num::before {
      width: 50px;
      height: 50px;
      font: 600 20px / 50px "Wix Madefor Display", sans-serif;
    }

    .apply__text {
      margin: 0 0 0 -10px;
      font-size: 16px;
    }
  }

  @media (max-width: 1170px) {
    .apply__steps {
      gap: 10px;
    }
  }

  @media (max-width: 576px) {
    .apply__num::before {
      width: 40px;
      height: 40px;
      font: 600 20px / 40px "Wix Madefor Display", sans-serif;
    }

    .apply__steps li{
      grid-template-columns: 52px 1fr;
    }

    .apply__steps {
      gap: 12px;
    }

    .apply__text {
      margin: 0;
    }
  }

  
  /* ===== CTA Section ===== */
.cta {
    background: var(--color-primary);          
    border-radius: var(--radius-l);
    padding: 30px;
  }
  
  .cta__inner {
    display: flex;
    align-items: center;
    gap:  24px;
    padding: 0;
  }
  
  .cta__content {
    flex: 1 1 75%;
  }
  
  .cta__title {
    margin: 0 0 1.25rem;
    color: #fff;
  }
  
  .cta__subtitle {
    margin: 0 0 2rem;
    max-width: 60ch;
    color: #fff;
  }
  
  .cta__button {
    display: inline-flex;
    align-items: center;
    height: 60px;
    gap: 0.5rem;
    padding: 12px 32px;
    background: #fff;
    color: var(--color-primary-hover);
    border-radius: 12px;
    font: 500 20px/1 "Wix Madefor Display", sans-serif;
    text-decoration: none;
    transition: all 0.2s ease-in-out;
  }

  .cta__arrow {
    width: 1em;   
    height: 1em;
    flex-shrink: 0;  
    position: relative;
    top: 2px;
  }
  
  .cta__button:hover {
    background:  var(--color-block-bg-hover);
    color: var(--color-block-bg);
  }
  
  .cta__media {
    flex: 1 1 45%;
    text-align: right;
  }
  
  .cta__image {
    width: 100%;
    height: auto;
    max-height: 320px;
  }

  @media (max-width: 1170px) {
    .cta__inner {
      gap: 24px;
    }

    .cta__title {
      margin: 0 0 20px;
    }

    .cta__subtitle {
      margin: 0 0 40px;
    }

    .cta__content {
      flex: 1 1 50%;
    }

    .cta__image {
      width: 85%;
    }
  }
  
  @media (max-width: 990px) {
    .cta {
      padding: 20px;
      border-radius: var(--radius-s);
    }

    .cta__inner {
      flex-direction: column;
    }

    .cta__media {
      display: none;
    }
    
    .cta__content {
      width: 100%;
      flex: 1 1 100%;
    }

    .cta__image {
      width: 100%;
    }
  }

  @media (max-width: 576px) {
    .cta {
      padding: 12px;
      border-radius: var(--radius-m);
    }

    .cta__title {
      margin: 0 0 12px;
    }

    .cta__subtitle {
      margin: 0 0 24px;
    }

    .cta__button {
      justify-content: center;
      width: 100%;
    }

  }


/* ===== FAQ Section ===== */
.faq .container {
  padding: 0;
}

.faq__title {
    text-align: center;
    color: var(--color-dark);
  }
  
  .faq__list { margin: 0; padding: 0; list-style: none; }

  .faq__list li {
    border-radius: var(--radius-s);
    background: #fff;
    box-shadow: 0 1px 3px rgba(0,0,0,.05);
    margin-bottom: 1.25rem;
    overflow: hidden;    
  }
  
  .faq__question {
    width: 100%;
    border: none;
    background: none;
    padding: 30px;
    text-align: left;
    color: var(--color-dark);
    cursor: pointer;
    position: relative;
  }
  
  .faq__arrow {
    position: absolute;
    top: 50%;
    right: 30px;
    width: 14px;
    height: 14px;
    transform: translateY(-50%) rotate(45deg);
    border-right: 2px solid var(--color-primary-hover);
    border-bottom: 2px solid var(--color-primary-hover);
    transition: transform .3s;
  }
  
  .faq__list li.active .faq__arrow { transform: translateY(-50%) rotate(-135deg); }
  
  .faq__answer {
    height: 0;                   
    overflow: hidden;
    transition: height .3s ease-in-out;;
    position: relative;     
  }

  .faq__answer::before {
    content: "";
    position: absolute;
    top: 0;       
    left: 30px;        
    right: 30px;
    height: 1px;
    background: var(--color-grey);
}
  
  .faq__answer-inner {          
    padding: 30px;
    color: var(--color-dark);
  }

  @media (max-width: 1170px) {   
    .faq__title {
      margin: 0 0 20px;
    }

    .faq__question {
      padding: 20px 70px 20px 30px;
    }
  }

  @media (max-width: 990px) {
    .faq__answer-inner {
      padding: 20px 30px;
    }

    .faq__question.h4 {
      font-size: 22px;
    }

    .faq__answer-inner {
      font-size: 18px;
    }

    .faq__list li {
      margin-bottom: 12px;
    }
  }

  @media (max-width: 576px) {
    .faq__question {
        padding: 12px 60px 12px 12px;
    }

    .faq__answer-inner {
        padding: 12px;
    }

    .faq__answer::before {
      left: 12px;
      right: 12px;
    }
  }
  